`timescale 1ns/1ps
module matrix_mult_tb;
  reg clk, rst_n;
  reg [63:0] a_in, b_in;
  wire [15:0] result[7:0][7:0];
  
  matrix_mult uut (.*);
  
  always #5 clk = ~clk;
  
  initial begin
    // 初始化
    clk = 0; rst_n = 0;
    #20 rst_n = 1;
    
    // 测试案例1：单位矩阵相乘
    a_in = {8{8'h01}}; // 全1矩阵
    b_in = {8'h01, 7'h00}; // 第一列1
    #200;
    
    // 验证结果
    assert(result[0][0] === 16'h0001) else $error("Test1 failed");
    
    // 测试案例2：随机矩阵验证
    // 使用Python生成黄金参考值
    $python("gen_test_vector.py");
    #1000 $finish;
  end
  
  // 自动对比模块
  `include "scoreboard.sv"
endmodule